-
Notifications
You must be signed in to change notification settings - Fork 3.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
kvserver: only pause followers when holding active lease #85732
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Intentionally leaving this unsimplified as a purely mechanical commit. Release note: None
Release note: None
tbg
commented
Aug 8, 2022
Note: also still need to make sure a leader never considers itself paused. (edit: done) |
If the raft leader is not the leaseholder (which includes the case in which we just transferred the lease away), leave all followers unpaused. Otherwise, the leaseholder won't learn that the entries it submitted were committed which effectively causes range unavailability. Fixes cockroachdb#84884. Release note: None
As observed in cockroachdb#84884, an overloaded store that held leases could end up "pausing" replication traffic to itself. This (likely) had no practical effect since the leader never sends messages to itself, but it meant reporting bogus counts of paused replicas. This commit ensures that a raft leader will never pause itself. Release note: None
tbg
force-pushed
the
paused-leader-not-leaseholder
branch
from
August 8, 2022 13:48
b52a183
to
e4ae047
Compare
erikgrinaker
reviewed
Aug 9, 2022
erikgrinaker
approved these changes
Aug 10, 2022
bors r=erikgrinaker |
Build succeeded: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
If the raft leader is not the leaseholder (which includes the case in
which we just transferred the lease away), leave all followers unpaused.
Otherwise, the leaseholder won't learn that the entries it submitted
were committed which effectively causes range unavailability.
Fixes #84884.
Release note: None